The present invention relates to the implementation of error correction codes and more particularly to an implementation of error correcting codes which can be used for a plurality of applications.
Check bits are used e.g. for protecting data words against errors in data processing systems. When the data word is read into the storage of the system, check bits are generated in accordance with a predetermined code rule, and stored in the storage together with the data word. When the data word is read out, check bits for the read-out data word are again generated and compared with the originally stored check bits. The comparison of corresponding check bits supplies the so-called syndrome bits. If all syndrome bits are zero, the data word read corresponds to the one that has been written in. If one or several syndrome bits are not zero, there is an error, and depending on the code used one or several errors can be detected, and a limited number of errors can be corrected, by decoding the syndrome bit pattern. Devices for error detection and correction of the above specified type are described in U.S. Pat. Nos. 3,623,155, 3,648,239 and 3,755,797.
Whether the data bits arrive serially or in parallel usually determine whether the check bits are generated serially or in parallel, too. Depending on the type of reading device, the check bits can be generated in a byte-serial mode (see U.S. Pat. Nos. 3,851,306 and 3,868,632).
Once an ECC device is designed for a specific application it usually can only be used with one specific code, and is only applicable either for serial or for parallel operation. Furthermore, they are usually designed for use only for a specific number of bytes in the data word, and the number of bits per byte. Thus, an existing ECC device implemented on a semiconductor chip generally cannot be adapted to different circumstances so that a new ECC chip will have to be developed for each new circumstance.
It is therefore the object of the present invention to provide a device for generating check bits in such a manner that it can be applied universally.